package table;

import java.util.ArrayList;

import javax.swing.JTable;
import javax.swing.ListSelectionModel;
import javax.swing.table.AbstractTableModel;



public class SimpleTableModel extends AbstractTableModel{
public SimpleTableModel(){}
	
	public SimpleTableModel(ArrayList dados, String[] colunas)
	{
		setLinhas(dados);  
	    setColunas(colunas);
	}
	
	private ArrayList linhas = null;  
    private String [] colunas = null;  
    
    
    public String[] getColunas() 
    {
    	return colunas;
    }  
    
    public ArrayList getLinhas() 
    {
    	return linhas;
    }  
    
    public void setColunas(String[] strings)
    {
    	colunas = strings;
    	}
    
    public void setLinhas(ArrayList list)
    {
    	linhas = list;
    }  

	public int getRowCount() {
	
		return getLinhas().size();
	}

	public int getColumnCount() {
		
		return getColunas().length;
	}

	public Object getValueAt(int rowIndex, int columnIndex) {
		
		String [] linha = (String [])getLinhas().get(rowIndex);
		return linha[columnIndex];
	}
	public JTable createJTable() {  
		  
	    ArrayList dados = new ArrayList();  
	    String[] colunas = new String[] { "Estado", "Cidade" };  
	  
	    // Alimenta as linhas de dados  
	    dados.add(new String[] { "SP", "São Paulo" });  
	    dados.add(new String[] { "RJ", "Rio de Janeiro" });  
	    dados.add(new String[] { "RN", "Rio Grande do Norte" });  
	    dados.add(new String[] { "ES", "Espirito Santo" });  
	  
	    SimpleTableModel modelo = new SimpleTableModel(dados, colunas);  
	    JTable jtable = new JTable(modelo);  
	    jtable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);  
	  
	    return jtable;  
	}

}
